home *** CD-ROM | disk | FTP | other *** search
- %case window field%
- %HandleName%:% %ListHandle;
- %fieldname%:% %integer;
- %case winAuxiliary%
- {----------}
- Procedure Build%Itemname%;
- Begin
- with cur^ do begin
- SetWFont (%itemname%);
- %HandleName% := NewV1List (GetWRect (%itemname%), thePort);
- AddToList ('One', %HandleName%);
- AddToList ('Two', %HandleName%);
- AddToList ('Three', %HandleName%);
- AddToList ('Infinity', %HandleName%);
- LDoDraw (true, %HandleName%);
- end; {with}
- End; {Build%Itemname%}
-
- %case create%
- Build%Itemname%;
- %case dispose%
- LDispose (%HandleName%);
- %case mousein%
- if PtInRect (where, %HandleName%^^.rView) then begin
- if LClick (where, modifiers, %HandleName%) then begin
- {double click}
- end;
- if GetListChoice (%fieldname%, %HandleName%) then begin
- {something is selected}
- end;
- end;
- %case update%
- SetWFont (%itemname%);
- LUpdate (thePort^.visRgn, %HandleName%);
- bounds := %HandleName%^^.rView;
- InsetRect (bounds, -1, -1);
- FrameRect (bounds);
- %case activate%
- LActivate (activate, %HandleName%);
- %case track%
- if (whichControl = %HandleName%^^.vScroll)
- or (whichControl = %HandleName%^^.hScroll) then begin
- if LClick (where, 0, %HandleName%) then begin
- {double-click in scroll bar}
- end;
- end;
- %case itemNr%
- %DefineItem%
- %case dialog field%
- %fieldname%:% %integer;
- %haveField%
- %case init field%
- %fieldname% := -1;
- %case auxiliary%
- %needsFilter%
- {----------}
- var
- %itemname%Handle: ListHandle;
-
- {----------}
- Procedure Build%Itemname%;
- Begin
- %itemname%Handle := Vert1List (%itemname%);
- AddToList ('One', %itemname%Handle);
- AddToList ('Two', %itemname%Handle);
- AddToList ('Three', %itemname%Handle);
- AddToList ('Infinity', %itemname%Handle);
- LDoDraw (true, %itemname%Handle);
- End; {Build%Itemname%}
-
- {----------}
- Procedure Draw%Itemname%% %(whichDialog: DialogPtr;
- itemNr: integer);
- Begin
- DrawList (%itemname%Handle);
- End; {Draw%Itemname%}
-
- %case filter%
- if not filtered then begin
- filtered := FilterList (event, %itemname%Handle, %itemname%, %itemname%, itemHit);
- end;
- %case set%
- Build%Itemname%;
- SetUserItem (%Itemname%, @Draw%Itemname%);
- SetListChoice (%fieldname%, %itemname%Handle);
- %case hit%
- %itemname%: begin
- if GetListChoice (%fieldname%, %itemname%Handle) then begin
- {something is selected}
- end;
- end;
- %case finish%
- LDispose (%Itemname%Handle);
-